package stiletto.util.securehash;

/**
 * 패스워드 등을 저장하는데 쓰이는, 흔히 단방향 암호화라고도 부르는 해싱(Hashing)을 담당한다.
 * SHA 계열의 해싱을 쓰려면 SHA-256/384/512를 써야 한다(SHA-0/1은 공격법이 있다).
 * SHA 계열 이외에도 PBKDF2,
 */
public interface SecureHasher {
  /**
   *
   * @param plainText 평문
   * @return Hashing된 메시지
   */
  public byte[] doHasing(byte[] plainText);

  /**
   *
   * @return Hash 알고리즘 이름
   */
  public String getAlgorithmName();
}
